package _06_动态规划;

public class _198_打家劫舍复习 {


    // 当前偷了，那么前面就不能偷窃，而如果没偷，就是的获取最大金额
    // 比较透与不偷的最大值，即为当前最大值
    public int rob(int[] nums) { // 可优化为变量
        if (nums.length == 1) return nums[0];
        int[] dp = new int[nums.length];
        dp[0] = nums[0];
        dp[1] = Math.max(nums[0], nums[1]);
        for (int i = 2; i < nums.length; i++) {
            dp[i] = Math.max(dp[i - 2] + nums[i], dp[i - 1]);
        }
        return dp[nums.length - 1];
    }

}
